/**
 * @author Shen Yi - bm2736892@gmail.com
 */
o3djs.require('o3djs.util');
o3djs.require('o3djs.math');
o3djs.require('o3djs.rendergraph');
o3djs.require('o3djs.scene');
o3djs.require('o3djs.pack');
o3djs.require('o3djs.arcball');
o3djs.require('o3djs.primitives');
o3djs.require('o3djs.material');
o3djs.require('o3djs.loader');
o3djs.require('o3djs.quaternions');
o3djs.require('o3djs.picking');
o3djs.require('o3djs.debug');


function QtInit(callBack)
{	
	o3djs.util.makeClients(function(clientElements){
		elem = clientElements[0];
		
		var client = elem.client;
		var o3d = elem.o3d;
		var pack = client.createPack();
		
		SceneManager.init(elem, pack, client, o3d);
		MaterialManager.init(pack, client);
		TextureManager.init(pack, o3d);
		
		callBack();
	},  'LargeGeometry, FloatingPointTextures');	//large geometry is for the mesh has many vertice
	
}